Receiver for M-ary-QAM MIMO communication system

ABSTRACT

The received signal y 0 (t) is modulated by M-ary-QAM method. The same signal is received by the receiver  0  and receiver  1  through different paths. First, the receiver  0  detects the received signal and calculates a posteriori probabilities for the detected signal. These a posteriori probabilities are sent to the receiver  1.  The receiver  1  detects the same signal and calculates second a posteriori probabilities using the probabilities sent from the receiver  0.  The second a posteriori probabilities are sent to the receiver  0  and used to calculate third a posteriori probabilities in the receiver  0.  These processes are repeated several times. Finally, both a posteriori probabilities of the receiver  0  and  1  are combined to decide the received signals.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to communication system employing MIMO technique with two or more antennas at the transmitting and the receiving ends.

2. Description of the Related Arts

Digital communication using multiple-input-multiple-output (MIMO), sometimes called a “volume-to-volume”, wireless link has recently emerged as one of the most significant breakthroughs in modern communications. A key feature of MIMO system is the ability to turn multipath propagation, traditionally a pitfall of wireless transmission, into a benefit for user. MIMO technology effectively takes advantage of random fading and, when available, multipath delay which ceases effectiveness of multiplying data transfer rates.

It is a common practice for MIMO-based communication system that for the data stream of interest, the contributions from other data streams are removed by signal processing by subtracting signal replica of the other data streams from the data stream of interest, i.e. compensation technique is employed (V-BLAST, MSSE-VBLAST, Zero Forced V_BLAST).

MIMO system can be defined simply as below. Given an arbitrary wireless communication system, we consider a link for which the transmitting end as well as the receiving end is equipped with multiple antenna elements. Such set up for the case when only two antennas are employed at the transmitting and the receiving sides is illustrated in FIG. 1. According to FIG. 1, there are two transmitters each having one antenna. From each transmitter, a different data stream is transmitted. The transmitter TRX0 receives 1st data stream having data D₀ and transmits it. The transmitter TRX1 receives the 2nd data stream having data D₁ and transmits it. Each data D₀, D₁ propagates in the air and is received by two receiver REC0, REC1. Each receiver REC0, REC1 has one antenna respectively. The received signal y₀ of the receiver REC0 includes the transmitted signals of signal D₀, D₁. Also, the received signal y₁ of the receiver REC1 includes the transmitted signals of signal D₀, D₁.

At the receiving array, the spatial signature of each of the received signals is estimated. Based on this information, a signal processing technique is then applied to separate the signals. Linear or non-linear receivers can be used in consideration of a range of performance/complexity trade-off.

Signal at the receivers can be expressed as y ₀ =D ₀ ·h ₀₀ +D ₁ ·h ₀₁   (1) y ₁ =D _(o) ·h ₁₀ +D ₁ ·h ₁₁   (2) or in the form of the vector product Y=H·D, where ${H = \begin{bmatrix} h_{00} & h_{01} \\ h_{10} & h_{00} \end{bmatrix}},$ ${D = \begin{bmatrix} D_{0} \\ D_{1} \end{bmatrix}},{Y = \begin{bmatrix} y_{0} \\ y_{1} \end{bmatrix}}$ h_(ij) is transfer coefficient from j-th transmitter to the i-th receiver. D₀ and D₁ are symbols from the first and the second data streams respectively. Each transmitted symbol D₀ and D₁ is carrying several bits of information. (BPSK 1 bit; QPSK 2 bits; QAM-16 4 bits) There are several conventional decoding methods as below. The Zero Forcing Algorithm [See Non-Patent Document 1]

The first conventional decoding technique is so-called Zero-Forcing (ZF) algorithm. With ZF, the estimates of the transmitted vector are obtained at the receiver using the following equation: D{circumflex over (0)}=(H*·H)⁻¹ H*·Y=H ⁺ ·Y   (3) where “+” represents the pseudo-inverse. In order for the pseudo-inverse to exist, the number of transmitting antennas must to be less than or equal to the number of receiving antennas. MMSE Algorithm [See Non-Patent Document 1]

Another approach in linear estimation theory to the problem of estimating a random vector D on the basis of observation Y is to choose a matrix G that minimizes the Mean Square Error (MMSE) given below. ε² =E└(D−D{circumflex over (0)})*(D−D{circumflex over (0)})┘=[( D−G·Y)*(D−G·Y)]  (4)

The solution can be obtained as D{circumflex over (0)}=(α·I+H*·H)⁻¹ H*·Y   (5) where α is equal to the noise dispersion. From (5) it becomes clear that the ZF approach corresponds to an MSSE solution with α equals to zero. Decision Feedback Decoding [See Non-Patent Document 1, and 2]

The Zero Forcing approach described before is viable, but superior performance is obtained if non-linear techniques are used. If the most reliable element of the transmitted vector D could be decoded and used to improve decoding of the other elements of D, the performance may increase. This is called symbol cancellation. Furthermore, ZF, or MMSE is used to perform detection process in Decision Feedback Decoding process. In other words, symbol cancellation is based on the subtraction of interference of already detected components of D from received signal vector Y.

Maximum Likelihood Decoding [See Non-Patent Document 1]

The only decoding method that is not based on calculation of matrix inverses is the Maximum Likelihood Decoding (MLD) algorithm. MLD is a method that compares the received signal with all possible transmitted vectors (modified by H) and estimates D according to the Maximum Likelihood principle. This principle can be formalized by the following equation.

In the non-patent document 3, the similar device as the present invention is disclosed by the inventor of the present invention. In this document, the technology which can be applied only to BPSK and QPSK cases is disclosed. D{circumflex over (0)}=arg min||Y−H·D||  (6)

-   [non-patent document 1]. A. van Zelst, “Space Division Multiplexed     Algorithms” -   [non-patent document 2] R. van Nee at al. “Maximum Likelihood     Decoding in a Space Division Multiplexing System” -   [non-patent document 3] Alexander N. Lozhkin “Novell Interactive MAP     Detector For MIMO Communication”, Proc. of WPMC '04

For the above described receiving techniques simulations are performed to compare the BER performances. The result of the simulation is shown in FIG. 2. In FIG. 2 the BERs for different approaches are depicted against Eb/No per receiving antenna for an antenna configuration 2 by 2 as shown in FIG. 1. Furthermore, a QAM-16 modulation scheme is used and the data is transmitted without coding.

From FIG. 2 it can be seen that MLD has the best performance. However implementation of MLD requires an exhaustive search through all possible transmitted vectors. Therefore the load of calculation is large. Besides, the performance of the ZF is fairly bad compared to the MLD. The performance of the present invention is also shown in FIG. 2 as “Turbo 3TI” and “Turbo 4TI”. The superiority of the present invention is described in the chapter of the embodiment.

SUMMARY OF THE INVENTION

Accordingly, the objects of the present invention are to provide the receiver with simplified configuration, fast processing speed and light load meanwhile keeping almost the same BER performance (BER, Diversity order) as MLD for MIMO-based communication systems.

The receiver of the present invention is a receiver for M-ary-QAM MIMO Communication System comprising at least two receiving units each with at least one antenna, each receiving unit comprising: a posteriori probability calculation unit for calculating a posteriori probabilities for signals which are detected by the at least, one antenna and are modulated such that an amplitude of the signals is changed according to signal values, based on set values; a transmission unit for transmitting the a posteriori probabilities to another receiving unit; a setting unit for setting the a posteriori probabilities transmitted from another receiving unit to the set values; and a decision unit for deciding signal value based on a combination of a posteriori probabilities calculated by own receiving unit and another receiving unit, wherein the transmission of the a posteriori probabilities between at least two receiving units is repeated an empirically determined number of times.

According to the present invention, the simple and fast receiver for MIMO communication system is realized.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is the general case of MIMO system with two transmitting and two receiving antennas;

FIG. 2 is BER for different receivers techniques;

FIG. 3 is the proposed Turbo-receiver for QAM-16 constellation;

FIG. 4 is the combining scheme that combines the decision obtained at the receiver 0 and receiver 1

FIG. 5 is constellation points for QAM-16 with Gray Mapping

FIG. 6 is the Single Bit Receiver that calculates the differences of a posteriori probabilities for all bits i₁, i₂, q₁, q₂ contained in the transmitted information symbol D₀;

FIG. 7 is a Signal Processor that calculates set of signals “Out A [0 . . . 7]” and “Out B [0 . . . 7]” from the receiver's input signal y(t);

FIG. 8 is I and Q signal processor implemented by Signal Processor (FIG. 7);

FIG. 9 is Look-Up Table (LUT) for bit i₀₁;

FIG. 10 is Look-Up Table (LUT) for bit q₀₁;

FIG. 11 is Look-Up Table (LUT) for bit i₀₂;

FIG. 12 is Look-Up Table (LUT) for bit q₀₂;

FIG. 13 is the Main Processor implemented in the single bit receiver (FIG. 6);

FIG. 14 is Processor 0, implemented by the Main Processor (FIG. 13);

FIG. 15 is Processor 1, implemented by the Main Processor (FIG. 13);

FIG. 16 is Processor 2, implemented by the Main Processor (FIG. 13);

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Still referring to FIG. 2, the receiver of the present invention provides BER performances that are very close (under 1 dB) to the receiver which employ MLD approach (MLD and QR-MLD in FIG. 2). However in contrast to MLD-based receiver, the complexity of the configuration of the receiver of the present invention is significantly low. The low complexity of the receiver of the present invention is obtained by an interactive estimation technique. Thus instead of comparing the received signal with all possible transmitted vectors (modified by H) for D estimation, in the present invention, data of each data stream are estimated separately and individually, and then the information derived from the one data stream, after non-linear processing, is used to refine the estimated a posteriori probabilities for other data stream, and vice versa.

Such an improvement is obtained by the non-linear signal processing together with turbo algorithm—when information derived from the one data stream, after non-linear processing, is used to refine the estimated a posteriori probabilities for other data stream, and vice versa.

The main advantage of the receiver of the present invention is that, in contrast to the common practice, we implemented iterative maximum likelihood estimation or as we call it Turbo-receiver. This technique provides BER results, which are very close to the Maximum Likelihood Decoding (MLD), and at the same time provides less level of calculation complexity due to implementation.

The receiver of the present invention is based on the interactive maximum a posteriori probabilities estimation algorithm. In the proposed turbo receiver of the present invention, the information derived from the one data stream, after non-linear processing, is used to refine the estimated a posteriori probabilities for other data stream, and vice versa.

According the present invention in the simple example of MIMO transmission where there are two transmitting and receiving antennas, MIMO communication system comprising: two transmitters with quadrature modulation (i.e. BPSK, QPSK, QAM), which transmit two (the first and the second) data streams independently through two antennas; four complex propagation paths: path from the first transmitting antenna to the first receiving antenna is h₀₀; path from the first transmitting antenna to the second receiving antenna is h₁₀; path from the second transmitting antenna to the first receiving antenna is h₀₁; path from the second transmitting antenna to the second receiving antenna is h₁₁; (as shown in FIG. 1)

Preferably, there are two transmitter and two receivers in the MIMO communication system. Each transmitter employs, for example, QAM-16 modulation for transmission of information symbols D_(i), i=0, 1. In the case of QPSK or M-QAM transmission, each informational symbol D_(i) consists of several bits i.e D_(i)={i_(i1), i_(i2), q_(i1), q_(i2)}. Thus there are two bits for QPSK constellation—the bit that corresponds to the real part of D_(i) or i₁=Re(D_(i)) and the bit that corresponds to the imaginary part of D_(i) or q₁=Im(D_(i)), four bits for QAM-16 (bits i₁, i₂, q₁, q₂), eight bits for QAM-64, etc. In the case of BPSK transmissions, imaginary part is not transmitted and is not detected at the receiver and only one bit i₁ is transmitted.

FIGS. 3 and 4 show overall configuration of the receiver of the present invention.

For QAM-16 case, the receiver for each information symbol D_(i)={i_(i1), i_(i2), q_(i1), q_(i2)}, i=0, 1, consists of two receiver parts placed in receiver 0 (REC0) and receiver 1 (REC1) (see FIGS. 1 and 3) Each of receivers (REC0 and REC1) provides independent reception for all four bits that correspond to each transmitted information symbol D_(i), i=0, 1. Estimations for each transmitted symbol or bit are obtained independently in both receivers (REC0 and REC1). Then these independent estimations are combined as shown in FIG. 4 for the case of symbol D₀ in order to improve the reliability of decision. The similar combining is assumed for symbol D₁.

In FIG. 4, two receivers and the connection between them are shown. The receiver 0 receives the signal y₀(t) and calculates each of probabilities Δln P(i₀₁/y₀(t)) Δln P(i₀₂/y₀(t)), Δln P(q₀₁/y₀(t)), Δln P(q₀₂/y₀(t)). Then these probabilities are transmitted to the receiver 1. The receiver 0 receives from the receiver 1 the probabilities Δln P(i₀₁/y₁(t)), Δln P(i₀₂/y₁(t)), Δln P(q₀₁/y₁(t)) Δln P(q₀₂/y₁(t)) and refines the probabilities Δln P(i₀₁/y₀(t)) Δln P(i₀₂/y₀(t)), Δln P(q₀₁/y₀(t)), Δln P(q₀₂/y₀(t)). After three or four times repetition of this refinement each of the probabilities are sent to the decision units 10-1 and each data value for i₀₁, i₀₂, q₀₁, q₀₂ is determined. The same process is conducted for the receiver 1. The receiver 1 receives the signal y₁(t), calculates the probabilities Δln P(i₁₁/y₁(t)), Δln P(i₁₂/y₁(t)), Δln P(q₁₁/y₁(t)), Δln P(q₁₂/y₁(t)) and refines these probabilities by the probabilities Δln P(i₁₁/y₀(t)), Δln P(i₁₂/y₀(t)), Δln P(q₁₁/y₀(t)), Δln P(q₁₂/y₀(t)) received from the receiver 0. And each value for i₁₁, i₁₂, q₁₁, q₁₂ is determined by the decision units 10-2. The number of times of repetition for the probability exchange and refinement should be determined by a person of ordinary skill in the art based on the empirical estimation.

After the prescribed number of repetition, the probabilities of the receiver 0 and the probabilities of the receiver 1 are combined as shown in FIG. 4 and sent to the decision units 10-1.

From here, in order to simplify the future discussions without any loss of generality, we assumed that TRX and REC ends employ only two antennas (FIG. 1) and constellation types employed in both transmitters are QAM-16. However all discussions, conclusions and results in this document are correct for any arbitrary number of TRX and REC antennas and type of constellations i.e. M-ary-QAM.

QAM-16 constellation points in the case of Gray mapping are shown in FIG. 5. The quaternary quadrature components Q and I are Gray encoded by assigning the bits 01, 00, 10 and 11 to the levels 3d, d, −d and −3d, respectively. Here we assume the following bits order: i₁, i₂, q₁, q₂.

With the above definitions, signals in the quadratures Q and I can be defined by Table 1.

Bits i₁, i₂, q₁, q₂ in the 4-bits QAM-16 symbol are suppose to be statistically independent and equiprobable. Because of the statistical independences of the bits i₁, i₂, q₁, q₂, signals (see Table 1) in the quadratures are also independent.

There are two transmitter and two receivers in the MIMO communication system shown in FIG. 1. Each transmitter employs QAM-16 modulation (constellation) for transmission of information symbol D_(i), i=0, 1. Thus each information symbol D_(i) consists of two parts—the real part Re(D_(i)=i_(i1), i_(i2)) and the imaginary part Im(D_(i)=q_(i1), q_(i2)) Information symbol D_(i) can be transmitted by one of sixteen possible signals S*_(j)(t), j=0, . . . , 15 from constellation shown in FIG. 5. The specific number of j depends on the four informational data bits {i_(i1), i_(i2), q_(i1), q_(i2)} carried by transmitted symbol D_(i)={i_(i1), i_(i2), q_(i1), q_(i2)} as shown in the table 1 below. TABLE 1 Signal Signal S*_(j)(t) No i₁ i₂ q₁ q₂ Re + Im S*₀(t) 1 1 1 1 −3d − 3d S*₁(t) 1 1 1 0 −3d − 1d S*₂(t) 1 1 0 1 −3d + 3d S*₃(t) 1 1 0 0 −3d + 1d S*₄(t) 1 0 1 1 −1d − 3d S*₅(t) 1 0 1 0 −1d − 1d S*₆(t) 1 0 0 1 −1d + 3d S*₇(t) 1 0 0 0 −1d + 1d S*₈(t) 0 1 1 1 +3d − 3d S*₉(t) 0 1 1 0 +3d − 1d S*₁₀(t) 0 1 0 1 +3d + 3d S*₁₁(t) 0 1 0 0 +3d + 1d S*₁₂(t) 0 0 1 1 +1d − 3d S*₁₃(t) 0 0 1 0 +1d − 1d S*₁₄(t) 0 0 0 1 +1d + 3d S*₁₅(t) 0 0 0 0 +1d + 1d

Note that between signals S*_(j)(t) there is relation S*₀(t)=−S*₁₀(t), S*₁(t)=−S*₁₁(t), etc.

Assuming QAM-16 transmissions, signals y₀(t) and y₁(t) at the inputs of the first and the second receivers (receiver number zero (REC0) and receiver number one (REC1)) represent a linear combination of signals transmitted by the first and the second transmitters as y ₀(t)=h ₀₀ ·D ₀ +h ₀₁ ·D ₁ y ₁(t)=h ₁₀ ·D ₀ +h ₁₁ ·D ₁

Let's introduce a new notation for transmitted signals S*_(ij)(t). In this notation index i is the transmitter number (0 or 1) meanwhile index j defines by transmitted information symbol in transmitter number i. Thus j=0, . . . , 15 according table 1.

Thus, at the input of the each receiver, there is 256 possible signals defined by the-pair of transmitted informational symbols D_(i)={i_(i1), i_(i2), q_(i1), q_(i2)} in the first and the second transmitters. Table 2 represents all possible signals S_(j)(t), i=0, . . . , 255 at the REC0 input. The similar results can be obtained for REC1, with replacement of h₀₀→h₁₀ and h₀₁→h₁₁. TABLE 2 REC0 S_(j)(t) D₀ D₁ S_(j)(t) D₀ D₁ S₀ = h₀₀S*₀₀ + h₀₁S*₁₀ +1 + 1 + 1 + 1 +1 + 1 + 1 + 1 S₈ = h₀₀S*₀₀ + h₀₁S*₁₈ +1 + 1 + 1 + 1 −1 + 1 + 1 + 1 S₁ = h₀₀S*₀₀ + h₀₁S*₁₁ +1 + 1 + 1 + 1 +1 + 1 + 1 − 1 S₉ = h₀₀S*₀₀ + h₀₁S*₁₉ +1 + 1 + 1 + 1 −1 + 1 + 1 − 1 S₂ = h₀₀S*₀₀ + h₀₁S*₁₂ +1 + 1 + 1 + 1 +1 + 1 − 1 + 1 S₁₀ = h₀₀S*₀₀ + h₀₁S*₁₁₀ +1 + 1 + 1 + 1 −1 + 1 − 1 + 1 S₃ = h₀₀S*₀₀ + h₀₁S*₁₃ +1 + 1 + 1 + 1 +1 + 1 − 1 − 1 S₁₁ = h₀₀S*₀₀ + h₀₁S*₁₁₁ +1 + 1 + 1 + 1 −1 + 1 − 1 − 1 S₄ = h₀₀S*₀₀ + h₀₁S*₁₄ +1 + 1 + 1 + 1 +1 − 1 + 1 + 1 S₁₂ = h₀₀S*₀₀ + h₀₁S*₁₁₂ +1 + 1 + 1 + 1 −1 − 1 + 1 + 1 S₅ = h₀₀S*₀₀ + h₀₁S*₁₅ +1 + 1 + 1 + 1 +1 − 1 + 1 − 1 S₁₃ = h₀₀S*₀₀ + h₀₁S*₁₁₃ +1 + 1 + 1 + 1 −1 − 1 + 1 − 1 S₆ = h₀₀S*₀₀ + h₀₁S*₁₆ +1 + 1 + 1 + 1 +1 − 1 − 1 + 1 S₁₄ = h₀₀S*₀₀ + h₀₁S*₁₁₄ +1 + 1 + 1 + 1 −1 − 1 − 1 + 1 S₇ = h₀₀S*₀₀ + h₀₁S*₁₇ +1 + 1 + 1 + 1 +1 − 1 − 1 − 1 S₁₅ = h₀₀S*₀₀ + h₀₁S*₁₁₅ +1 + 1 + 1 + 1 −1 − 1 − 1 − 1 . . . . . . . . . . . . . . . . . . S₂₄₀ = h₀₀S*₀₁₅ + h₀₁S*₁₀ −1 − 1 − 1 − 1 +1 + 1 + 1 + 1 S₂₄₈ = h₀₀S*₀₁₅ + h₀₁S*₁₈ −1 − 1 − 1 − 1 −1 + 1 + 1 + 1 S₂₄₁ = h₀₀S*₀₁₅ + h₀₁S*₁₁ −1 − 1 − 1 − 1 +1 + 1 + 1 − 1 S₂₄₉ = h₀₀S*₀₁₅ + h₀₁S*₁₉ −1 − 1 − 1 − 1 −1 + 1 + 1 − 1 S₂₄₂ = h₀₀S*₀₁₅ + h₀₁S*₁₂ −1 − 1 − 1 − 1 +1 + 1 − 1 + 1 S₂₅₀ = h₀₀S*₀₁₅ + h₀₁S*₁₁₀ −1 − 1 − 1 − 1 −1 + 1 − 1 + 1 S₂₄₃ = h₀₀S*₀₁₅ + h₀₁S*₁₃ −1 − 1 − 1 − 1 +1 + 1 − 1 − 1 S₂₅₁ = h₀₀S*₀₁₅ + h₀₁S*₁₁₁ −1 − 1 − 1 − 1 −1 + 1 − 1 − 1 S₂₄₄ = h₀₀S*₀₁₅ + h₀₁S*₁₄ −1 − 1 − 1 − 1 +1 − 1 + 1 + 1 S₂₅₂ = h₀₀S*₀₁₅ + h₀₁S*₁₁₂ −1 − 1 − 1 − 1 −1 − 1 + 1 + 1 S₂₄₅ = h₀₀S*₀₁₅ + h₀₁S*₁₅ −1 − 1 − 1 − 1 +1 − 1 + 1 − 1 S₂₅₃ = h₀₀S*₀₁₅ + h₀₁S*₁₁₃ −1 − 1 − 1 − 1 −1 − 1 + 1 − 1 S₂₄₆ = h₀₀S*₀₁₅ + h₀₁S*₁₆ −1 − 1 − 1 − 1 +1 − 1 − 1 + 1 S₂₅₄ = h₀₀S*₀₁₅ + h₀₁S*₁₁₄ −1 − 1 − 1 − 1 −1 − 1 − 1 + 1 S₂₄₇ = h₀₀S*₀₁₅ + h₀₁S*₁₇ −1 − 1 − 1 − 1 +1 − 1 − 1 − 1 S₂₅₅ = h₀₀S*₀₁₅ + h₀₁S*₁₁₅ −1 − 1 − 1 − 1 −1 − 1 − 1 − 1

In order to simplify further discussions, let's consider only first receiver (REC0). All conclusions and expression below obtained for REC0 can be directly applicable to the second receiver (REC1). To do this, we have to replace h₀₀, h₁₀ with h₁₀, h₁₁ and change indexes with signals from 0 to 1, correspondingly.

Calculation on the Bit i₀₁ in the Receiver REC 0

The a posteriori probability of the reception of the certain signal S_(i)(t) from Tables 2 in the additive mixture signal and noise y₀(t) at the first receiver (REC0) input can be described by Bayes' mixed rule:(see Yoshihiko Akaiwa, “Introduction to Digital Mobile Communication” A Wiley-Interscience, p. 81, 1997, ISBN:0471175455) $\begin{matrix} \begin{matrix} {{P_{i}\left\lbrack {i_{01}/{y_{0}(t)}} \right\rbrack} = {P_{i}\left\lbrack {S_{i}/{y_{0}(t)}} \right\rbrack}} \\ {= \frac{\quad{P_{\quad a}\left( \quad S_{\quad i} \right)\quad P\left( \quad{y_{\quad 0}{(t)/\quad S_{\quad i}}} \right)}}{P\left( \quad{y_{\quad 0}(t)} \right)}} \\ {\equiv {k_{0}{{P_{a}\left( S_{i} \right)} \cdot \exp}\left\{ {{- \frac{1}{N_{0}}}{\int_{0}^{T}{\left\lbrack {{y_{0}(t)} - S_{i}} \right\rbrack^{2}\quad{\mathbb{d}t}}}} \right\}}} \end{matrix} & (7) \end{matrix}$

From tables 2 we can write that the probability of receiving bit i₁=+1 in the first receiver (REC0) can be expressed as $\begin{matrix} {{{P\left( {i_{01} = {+ 1}} \right)} = {\sum\limits_{n = 0}^{127}{{P_{a}\left( S_{n} \right)} \cdot {P\left( {S_{n}/{y_{0}(t)}} \right)}}}}{{{For}\quad{all}\quad S_{\quad n}} \in D_{\quad 0}} = \left\{ {{i_{\quad 1} = {+ 1}},{\times {,{\times {, \times}}}}} \right\}} & (8) \\ {{{P\left( {i_{01} = {- 1}} \right)} = {\sum\limits_{n = 0}^{127}{{P_{a}\left( S_{n} \right)} \cdot {P\left( {S_{n}/{y_{0}(t)}} \right)}}}}{{{For}\quad{all}\quad S_{\quad n}} \in D_{\quad 0}} = \left\{ {{i_{\quad 1} = {- 1}},{\times {,{\times {, \times}}}}} \right\}} & (9) \end{matrix}$

In equations (7-9) x=±1, P_(a)(S_(i)) is a priori probability receiving/transmitting signal S_(i)(t) meanwhile P(S_(i)/y₀(t)) is the probability of the receiving signal S_(i)(t) in the input additive mixture signal y₀(t). A priori probabilities of the received or transmitted signal S_(i)(t) can be also expressed from table 2 through probabilities of the transmitted symbols D₀ and D₁ at the first and the second transmitters, P₀(D₀) and P₁(D₁), respectively: $\begin{matrix} {{P_{a}\left( S_{0} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} + 1 + 1 + 1} \right)}}} & {{P_{a}\left( S_{g} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} + 1 + 1 + 1} \right)}}} \\ {{P_{a}\left( S_{1} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} + 1 + 1 - 1} \right)}}} & {{P_{a}\left( S_{9} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} + 1 + 1 - 1} \right)}}} \\ {{P_{a}\left( S_{2} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} + 1 - 1 + 1} \right)}}} & {{P_{a}\left( S_{10} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} + 1 - 1 + 1} \right)}}} \\ {{P_{a}\left( S_{3} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} + 1 - 1 - 1} \right)}}} & {{P_{a}\left( S_{11} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} + 1 - 1 - 1} \right)}}} \\ {{P_{a}\left( S_{4} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} - 1 + 1 + 1} \right)}}} & {{P_{a}\left( S_{12} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} - 1 + 1 + 1} \right)}}} \\ {{P_{a}\left( S_{5} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} - 1 + 1 - 1} \right)}}} & {{P_{a}\left( S_{13} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} - 1 + 1 - 1} \right)}}} \\ {{P_{a}\left( S_{6} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} - 1 - 1 + 1} \right)}}} & {{P_{a}\left( S_{14} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} - 1 - 1 + 1} \right)}}} \\ {{P_{a}\left( S_{7} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{+ 1} - 1 - 1 - 1} \right)}}} & {{P_{a}\left( S_{15} \right)} = {{P_{0}\left( {{+ 1} + 1 + 1 + 1} \right)}{P_{1}\left( {{- 1} - 1 - 1 - 1} \right)}}} \\ \ldots & \ldots \\ {{P_{a}\left( S_{240} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} + 1 + 1 + 1} \right)}}} & {{P_{a}\left( S_{248} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} + 1 + 1 + 1} \right)}}} \\ {{P_{a}\left( S_{241} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} + 1 + 1 - 1} \right)}}} & {{P_{a}\left( S_{249} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} + 1 + 1 - 1} \right)}}} \\ {{P_{a}\left( S_{242} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} + 1 - 1 + 1} \right)}}} & {{P_{a}\left( S_{250} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} + 1 - 1 + 1} \right)}}} \\ {{P_{a}\left( S_{243} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} + 1 - 1 - 1} \right)}}} & {{P_{a}\left( S_{251} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} + 1 - 1 - 1} \right)}}} \\ {{P_{a}\left( S_{244} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} - 1 + 1 + 1} \right)}}} & {{P_{a}\left( S_{252} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} - 1 + 1 + 1} \right)}}} \\ {{P_{a}\left( S_{245} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} - 1 + 1 - 1} \right)}}} & {{P_{a}\left( S_{253} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} - 1 + 1 - 1} \right)}}} \\ {{P_{a}\left( S_{246} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} - 1 - 1 + 1} \right)}}} & {{P_{a}\left( S_{254} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} - 1 - 1 + 1} \right)}}} \\ {{P_{a}\left( S_{247} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{+ 1} - 1 - 1 - 1} \right)}}} & {{P_{a}\left( S_{255} \right)} = {{P_{0}\left( {{- 1} - 1 - 1 - 1} \right)}{P_{1}\left( {{- 1} - 1 - 1 - 1} \right)}}} \end{matrix}$

Here index at P defines the transmitter number 0 or 1. With the above definitions we can re-write (8) and (9) as P(i ₀₁=+1)=P ₀(+1+1+1+1){P ₁(+1+1+1+1)P(S ₀)+P ₁(+1+1+1−1)P(S ₁)+ . . . }+P ₀(+1+1+1−1){P ₁(+1+1+1+1)P(S ₁₆)+P(+1+1+1−1)P(S ₁₇)+ . . . }+P ₀(+1+1−1+1){P ₁(+1+1+1+1)P(S ₃₂)+P(+1+1+1−1)P(S ₃₃)+ . . . }+ . . . P ₀(+1−1−1−1){P ₁(+1+1+1+1)P(S ₁₁₂)+P(+1+1+1−1)P(S ₁₁₃)+ . . . }  (10) P(i ₀₁=−1)=P ₀(−1+1+1+1){P ₁(+1+1+1+1)P(S ₁₂₈)+P ₁(+1+1+1−1)P(S ₁₂₉)+ . . . }+P ₀(−1+1+1−1){P ₁(+1+1+1+1)P(S ₁₄₄)+P(+1+1+1−1)P(S ₁₄₅)+ . . . }+P ₀(−1+1−1+1){P ₁(+1+1+1+1)P(S ₁₆₀)+P(+1+1+1−1)P(S ₁₆₁)+ . . . }+ . . . P ₀(−1−1−1−1){P ₁(+1+1+1+1)P(S ₂₄₀)+P(+1+1+1−1)P(S ₂₄₁)+ . . . }  (11)

Note, that because all bits are assumed to be independent and equally probable, we can write that P _(i)(i ₁ , i ₂ , q ₁ , q ₂)=P _(i)(i ₁)·P _(i)(i ₂)·P _(i)(q ₁)·P _(i)(q ₂)   (12) For example: P ₁(i ₁=1, i ₂=+1, q ₁=+1, q ₂−−1)=P ₁(i ₁=+1)·P ₁(₂=+1)·P ₁(q ₁=+1)·P ₁(q ₂=−1)

In order to simplify notation let's introduce a new variable A_(n) defined as: $\begin{matrix} {{A_{n} = \begin{Bmatrix} {{{P\left( {q_{11} = {+ 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{4n} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{{4n} + 1} \right)}}} \right)} +} \\ {{P\left( {q_{11} = {- 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{{4n} + 2} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{{4n} + 3} \right)}}} \right)} \end{Bmatrix}}{{Thus},{{{with}\quad a\quad{new}\quad{{notation}:A_{0}}} = \begin{Bmatrix} {{{P\left( {q_{11} = {+ 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{0} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{1} \right)}}} \right)} +} \\ {{P\left( {q_{11} = {- 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{2} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{3} \right)}}} \right)} \end{Bmatrix}}}{A_{1} = \begin{Bmatrix} {{{P\left( {q_{11} = {+ 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{4} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{5} \right)}}} \right)} +} \\ {{P\left( {q_{11} = {- 1}} \right)}\left( {{{P\left( {q_{13} = {+ 1}} \right)}{P\left( S_{6} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}{P\left( S_{7} \right)}}} \right)} \end{Bmatrix}}\ldots{A_{31} = \begin{Bmatrix} {{{P\left( {q_{11}\quad = {+ 1}} \right)}\quad\left( {{{P\left( {q_{13} = {+ 1}} \right)}\quad{P\left( S_{124} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}\quad{P\left( S_{125} \right)}}} \right)} +} \\ {{P\left( {q_{11}\quad = {- 1}} \right)}\quad\left( {{{P\left( {q_{13} = {+ 1}} \right)}\quad{P\left( S_{126} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}\quad{P\left( S_{127} \right)}}} \right)} \end{Bmatrix}}\ldots{A_{63} = \begin{Bmatrix} {{{P\left( {q_{11}\quad = {+ 1}} \right)}\quad\left( {{{P\left( {q_{13} = {+ 1}} \right)}\quad{P\left( S_{252} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}\quad{P\left( S_{253} \right)}}} \right)} +} \\ {{P\left( {q_{11}\quad = {- 1}} \right)}\quad\left( {{{P\left( {q_{13} = {+ 1}} \right)}\quad{P\left( S_{254} \right)}} + {{P\left( {q_{13} = {- 1}} \right)}\quad{P\left( S_{255} \right)}}} \right)} \end{Bmatrix}}} & (13) \end{matrix}$

In the new notation equations (10) and (11) together with (12) and (13) are ${P\left( {i_{01} = {{+ 1}/{y_{0}(t)}}} \right)} = {{P_{a}\left( {i_{01} = {+ 1}} \right)}\begin{pmatrix} {{P\left( {i_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{01} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{0}} + {{P\left( {i_{12} = {- 1}} \right)}A_{1}}} \right)} +} \\ {{P\left( {i_{11} = {- 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{2}} + {{P\left( {i_{12} = {- 1}} \right)}A_{3}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{4}} + {{P\left( {i_{12} = {- 1}} \right)}A_{5}}} \right)} +} \\ {{P\left( {i_{11} = {- 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{6}} + {{P\left( {i_{12} = {- 1}} \right)}A_{7}}} \right)} \end{pmatrix}} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{\quad 01} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{8}} + {{P\left( {i_{12} = {- 1}} \right)}A_{9}}} \right)} +} \\ {{P\left( {i_{11} = {- 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{10}} + {{P\left( {i_{12} = {- 1}} \right)}A_{11}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{12}} + {{P\left( {i_{12} = {- 1}} \right)}A_{13}}} \right)} +} \\ {P\left( {i_{11} = {- 1}} \right)\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{14}} + {{P\left( {i_{12} = {- 1}} \right)}A_{15}}} \right)} \end{pmatrix}} \end{pmatrix}} \\ \quad \end{pmatrix}} \\ {{P\left( {i_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{01} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{16}} + {{P\left( {i_{12} = {- 1}} \right)}A_{17}}} \right)} +} \\ {P\left( {i_{11} = {- 1}} \right)\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{18}} + {{P\left( {i_{12} = {- 1}} \right)}A_{19}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{20}} + {{P\left( {i_{12} = {- 1}} \right)}A_{21}}} \right)} +} \\ {P\left( {i_{11} = {- 1}} \right)\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{22}} + {{P\left( {i_{12} = {- 1}} \right)}A_{23}}} \right)} \end{pmatrix}} \end{pmatrix}} +} \\ \quad \\ {\quad{{P\left( {q_{\quad 01} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02} = {+ 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{24}} + {{P\left( {i_{12} = {- 1}} \right)}A_{25}}} \right)} +} \\ {P\left( {i_{11} = {- 1}} \right)\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{26}} + {{P\left( {i_{12} = {- 1}} \right)}A_{27}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02} = {- 1}} \right)}\begin{pmatrix} {{{P\left( {i_{11} = {+ 1}} \right)}\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{28}} + {{P\left( {i_{12} = {- 1}} \right)}A_{29}}} \right)} +} \\ {P\left( {i_{11} = {- 1}} \right)\left( {{{P\left( {i_{12} = {+ 1}} \right)}A_{30}} + {{P\left( {i_{12} = {- 1}} \right)}A_{31}}} \right)} \end{pmatrix}} \end{pmatrix}}} \\ \quad \end{pmatrix}} \end{pmatrix}}$ ${P\left( {i_{01}\quad = \quad{{- 1}/{y_{0}(t)}}} \right)} = {{P_{a}\left( {i_{01}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{P\left( {i_{02}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{01}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{32}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{33}}} \right)} +}\quad} \\ {{P\left( {i_{11}\quad = \quad{- 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{34}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{35}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{36}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{37}}} \right)} +}\quad} \\ {{P\left( {i_{11}\quad = \quad{- 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{38}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{39}}} \right)} \end{pmatrix}} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{\quad 01}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{40}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{41}}} \right)} +}\quad} \\ {{P\left( {i_{11}\quad = \quad{- 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{42}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{43}}} \right)} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{44}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{45}}} \right)} +}\quad} \\ {P\quad\left( {i_{11}\quad = \quad{- 1}} \right)\quad{\left( {{{P\quad\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{46}}\quad + \quad{{P\quad\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{47}}} \right)\quad}} \end{pmatrix}} \end{pmatrix}} \\ \quad \end{pmatrix}} \\ {{{P\left( {i_{02}\quad = \quad{+ 1}} \right)}\quad\begin{pmatrix} {{{P\left( {q_{01}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{48}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{49}}} \right)} +}\quad} \\ {P\quad\left( {i_{11}\quad = \quad{- 1}} \right)\quad{\left( {{{P\quad\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{50}}\quad + \quad{{P\quad\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{51}}} \right)\quad}} \end{pmatrix}} +} \\ {{P\left( {q_{02}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{52}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{53}}} \right)} +}\quad} \\ {P\quad\left( {i_{11}\quad = \quad{- 1}} \right)\quad{\left( {{{P\quad\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{54}}\quad + \quad{{P\quad\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{55}}} \right)\quad}} \end{pmatrix}} \end{pmatrix}} +} \\ {\quad{{P\left( {q_{\quad 01}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{P\left( {q_{02}\quad = \quad{+ 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{56}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{57}}} \right)} +}\quad} \\ {P\quad\left( {i_{11}\quad = \quad{- 1}} \right)\quad{\left( {{{P\quad\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{58}}\quad + \quad{{P\quad\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{59}}} \right)\quad}} \end{pmatrix}} +} \\ \quad \\ {{P\left( {q_{02}\quad = \quad{- 1}} \right)}\begin{pmatrix} {{{{P\left( {i_{11}\quad = \quad{+ 1}} \right)}\quad\left( {{{P\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{60}}\quad + \quad{{P\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{61}}} \right)} +}\quad} \\ {P\quad\left( {i_{11}\quad = \quad{- 1}} \right)\quad{\left( {{{P\quad\left( {i_{12}\quad = \quad{+ 1}} \right)}\quad A_{62}}\quad + \quad{{P\quad\left( {i_{12}\quad = \quad{- 1}} \right)}\quad A_{63}}} \right)\quad}} \end{pmatrix}} \end{pmatrix}}} \\ \quad \end{pmatrix}}\quad} \end{pmatrix}}$

For all practical cases it is reasonable to assume that the a priori probabilities P_(a)(i₀₁=+1)=P_(a)(i₀₁=−1)=0.5. Omitting P(i,q) and taking ln (natural logarithm) leads to: $\begin{matrix} {{\ln\quad{P\left( {i_{01} = {{+ 1}/{y_{0}(t)}}} \right)}} = {\ln\left\{ {\sum\limits_{n = 0}^{31}A_{n}} \right\}}} & (14) \\ {{\ln\quad P\left( {i_{01} = {{- 1}/{y_{0}(t)}}} \right)} = {\ln\left\{ {\sum\limits_{n = 32}^{63}A_{n}} \right\}}} & (15) \end{matrix}$

In the maximum-likelihood receiver, the sign that the received information symbol d_(Re) has, is decided according to the result of comparing the a posteriori probabilities or their logarithms with the threshold. Therefore for the i₀₁, ${\Delta\quad{P\left( {i_{01}/{y_{0}(t)}} \right)}} = {\frac{P\left( {i_{01} = {{+ 1}/{y_{0}(t)}}} \right)}{P\left( {i_{01} = {{- 1}/{y(t)}}} \right)} > {/{< 1}}}$ or its logarithms, Δln P(i ₀₁ /y ₀(t))=ln P(i ₀₁=+1/y ₀(t))−ln P(i ₀₁=−1/y(t))>/<0   (16) where y₀(t)=S_(i)(t)+n(t) is an additive mixture of a sequence of signals and white Gaussian noise n(t) with the spectral power density N₀ and where the symbol >/< indicates comparison with threshold. (This decision procedure is conducted at the final stage of exchange of a posteriori probabilities.) Therefore the decision rule for bit i₀₁ with equations (14) and (15) can be expressed as: $\begin{matrix} {{\Delta\quad\ln\quad{P\left( {i_{01}/{y_{0}(t)}} \right)}} = {{{\ln\left\{ {\sum\limits_{n = 0}^{31}A_{n}} \right\}} - {\ln\left\{ {\sum\limits_{n = 32}^{63}A_{n}} \right\}}} > {/{< 0}}}} & (17) \end{matrix}$

Denote new variables as: Δ1_(n) =ln{cosh{0.5(ln A _(n) −ln A _(n+1))}}; Σ1_(n)=(ln A _(n) +1n A _(n+1)) Δ2_(n) =ln{cosh{0.5(0.5(Σ1_(n)−Σ1_(n+2)))+(Δ1_(n)−Δ1_(n+2))}} Σ2_(n)=(ln A _(n) +ln A _(n+1) +ln A _(n+2) +ln A _(n+3)) Δ3_(n) =in{cosh{0.5(0.5(Σ2_(n)−Σ2_(n+4)))+(Δ2_(n)−Δ2_(n+4))}} Σ3_(n)=(ln A _(n) +ln A _(n+1) +ln A _(n+2) +ln A _(n+3) +ln A _(n+4) +ln A _(n+5+ln A) _(n+6) +ln A _(n+7)) Δ4_(n) =ln{cosh{0.5(0.5(Σ3_(n)−Σ3_(n+4)))+(Δ3_(n)−Δ3_(n+4))}} ${\Sigma 4}_{n} = \begin{pmatrix} {{\ln\quad A_{n}} + {\ln\quad A_{n + 1}} + {\ln\quad A_{n + 2}} + {\ln\quad A_{n + 3}} + {\ln\quad A_{n + 4}} + {\ln\quad A_{n + 5}} + \quad A_{n + 6} + {\ln\quad A_{n + 7}} +} \\ {{\ln\quad A_{n + 8}} + {\ln\quad A_{n + 9}} + {\ln\quad A_{n + 10}} + {\ln\quad A_{n + 11}} + {\ln\quad A_{n + 12}} + \quad A_{n + 13} + {\ln\quad A_{n + 14}} + {\ln\quad A_{n + 15}}} \end{pmatrix}$

With new variables, (14) and (15) can be represented as: $\begin{matrix} \begin{matrix} {{\ln\quad{P\left( {i_{01} = {{+ 1}/{y_{0}(t)}}} \right)}} = {\ln\left\{ {\sum\limits_{n = 0}^{31}\quad A_{n}} \right\}}} \\ {= {{0.03125{\sum\limits_{n = 0}^{31}\quad{\ln\left\{ A_{n} \right\}}}} + {0.0625{\sum\limits_{n = 0}^{15}\quad{\Delta\quad 1_{2n}}}} +}} \\ {{0.125{\sum\limits_{n = 0}^{7}\quad{\Delta\quad 2_{4n}}}} + {0.25{\sum\limits_{n = 0}^{3}\quad{\Delta\quad 3_{8n}}}} +} \\ {{0.5{\sum\limits_{n = 0}^{1}\quad{\Delta\quad 4_{16n}}}} +} \\ {\ln\left\{ {\cosh\left\{ {0.5\begin{pmatrix} {{0.0625\left( {{\Delta 4}_{1} + {\Delta 4}_{16}} \right)} +} \\ {{0.125\left( {\sum\limits_{n = 0}^{7}\quad\begin{pmatrix} {{\Delta 1}_{2n} -} \\ {\Delta 1}_{{2n} + 16} \end{pmatrix}}\quad \right)} +} \\ {{0.25\left( {\sum\limits_{n = 0}^{3}\quad\begin{pmatrix} {{\Delta 2}_{4n} -} \\ {\Delta 2}_{{4n} + 16} \end{pmatrix}} \right)} +} \\ {{0.5\left( {\sum\limits_{n = 0}^{1}\quad\begin{pmatrix} {{\Delta 3}_{8n} -} \\ {\Delta 3}_{{8n} + 16} \end{pmatrix}} \right)} +} \\ \left( {{\Delta 4}_{0} - {\Delta 4}_{16}} \right) \end{pmatrix}} \right\}} \right\}} \end{matrix} & (18) \\ \begin{matrix} {{\ln\quad{P\left( {i_{01} = {- 1}} \right)}} = {\ln\left\{ {\sum\limits_{n = 32}^{63}\quad A_{n}} \right\}}} \\ {= {{0.03125{\sum\limits_{n = 32}^{63}\quad{\ln\left\{ A_{n} \right\}}}} + {0.0625{\sum\limits_{n = 0}^{15}\quad{\Delta 1}_{{2n} + 32}}} +}} \\ {{0.125{\sum\limits_{n = 32}^{7}\quad{\Delta 2}_{{4n} + 32}}} + {0.25{\sum\limits_{n = 0}^{3}\quad{\Delta 3}_{{8n} + 32}}} +} \\ {{0.5{\sum\limits_{n = 0}^{1}\quad{\Delta 4}_{{16n} + 32}}} +} \\ {\ln\left\{ {\cosh\left\{ {0.5\begin{pmatrix} {{0.0625\left( {{\Delta 4}_{32} + {\Delta 4}_{48}} \right)} +} \\ {{0.125\left( {\sum\limits_{n = 0}^{7}\quad\begin{pmatrix} {{\Delta 1}_{{2n} + 32} -} \\ {\Delta 1}_{{2n} + 48} \end{pmatrix}} \right)} +} \\ {{0.25\left( {\sum\limits_{n = 0}^{3}\quad\begin{pmatrix} {{\Delta 2}_{{4n} + 32} -} \\ {\Delta 2}_{{4n} + 48} \end{pmatrix}} \right)} +} \\ {{0.5\left( {\sum\limits_{n = 0}^{1}\quad\begin{pmatrix} {{\Delta 3}_{{8n} + 32} -} \\ {\Delta 3}_{{8n} + 48} \end{pmatrix}} \right)} +} \\ \left( {{\Delta 4}_{32} - {\Delta 4}_{48}} \right) \end{pmatrix}} \right\}} \right\}} \end{matrix} & (19) \\ {{{With}\quad(13)}{{\ln\left\{ A_{n} \right\}} = {{0.25\left( {{\ln\quad{P\left( S_{n} \right)}} + {\ln\quad{P\left( S_{n + 1} \right)}} + {\ln\quad{P\left( S_{n + 2} \right)}} + {\ln\quad{P\left( S_{n + 3} \right)}}} \right)} + {0.50\begin{pmatrix} {{\ln\left\{ {\cosh\left\{ {0.5\left( {{{\Delta ln}\quad{P\left( q_{12} \right)}} + {\ln\quad{P\left( S_{n} \right)}} - {\ln\quad{P\left( S_{n + 1} \right)}}} \right)} \right\}} \right\}} -} \\ {\ln\left\{ {\cosh\left\{ {0.5\left( {{{\Delta ln}\quad{P\left( q_{12} \right)}} + {\ln\quad{P\left( S_{n + 2} \right)}} - {\ln\quad{P\left( S_{n + 3} \right)}}} \right)} \right\}} \right\}} \end{pmatrix}} + {\ln\left\{ {\cosh\left\{ {0.5\begin{pmatrix} {{{\Delta ln}\quad{P\left( q_{11} \right)}} + {0.5\left\lbrack {\left( {{\ln\quad{P\left( S_{n} \right)}} + {\ln\quad{P\left( S_{n + 1} \right)}}} \right) -} \right.}} \\ {\left. \left( {{\ln\quad{P\left( S_{n + 2} \right)}} + {\ln\quad{P\left( S_{n + 3} \right)}}} \right) \right\rbrack +} \\ {\ln\left\{ {\cosh\left\{ {0.5\left( {{{\Delta ln}\quad{P\left( q_{12} \right)}} + {\ln\quad{P\left( S_{n} \right)}} -} \right.} \right.} \right.} \\ {\left. \left. \left. {\ln\quad P\left( S_{n + 1} \right)} \right) \right\} \right\} -} \\ {\ln\left\{ {\cosh\left\{ {0.5\left( {{{\Delta ln}\quad{P\left( q_{12} \right)}} + {\ln\quad{P\left( S_{n + 2} \right)}} -} \right.} \right.} \right.} \\ \left. \left. \left. {\ln\quad P\left( S_{n + 3} \right)} \right) \right\} \right\} \end{pmatrix}} \right\}} \right\}}}}} & (20) \end{matrix}$ where in P(S_(n))≡ln(P(S_(n)/y(t))) is defined by equation (7).

In the case where decision rules (16) or (17) are implemented, values that are the same for both P(i₀₁=+1/y₀o(t)) and P(i₀₁=−1/y₀(t)) are compensated with each other. Therefore we can write that $\begin{matrix} {{P\left( S_{i} \right)} \equiv {P\left\lbrack {S_{i}/{y_{0}(t)}} \right\rbrack}} \\ {= {{{P_{a}\left( S_{i} \right)} \cdot \exp}\left\{ {{- \frac{1}{N_{0}}}{\int_{0}^{T}{\left\lbrack {{y_{0}(t)} - S_{i}} \right\rbrack^{2}\quad{\mathbb{d}t}}}} \right\}}} \end{matrix}$ and $\begin{matrix} {{\ln\quad{P\left( S_{i} \right)}} \equiv {\ln\quad{P_{i}\left\lbrack {S_{i}/{y_{0}(t)}} \right\rbrack}}} \\ {= \left\{ {{- \frac{1}{N_{0}}}{\int_{0}^{T}{\left\lbrack {{y_{0}(t)} - S_{i}} \right\rbrack^{2}\quad{\mathbb{d}t}}}} \right\}} \\ {\equiv {{{- \frac{2}{N_{0}}}{Re}\left\{ \overset{\_}{{y_{0}(t)} \cdot S_{i}^{*}} \right\}} + \frac{E_{i}}{\quad N_{0}}}} \end{matrix}$ where the overbar denotes integration, and E_(i) is the energy of signal S_(i). Note that y₀(t) and S*_(i) are complex variable and *denotes complex conjugation operation.

Summarizing the overall procedure of the embodiment of the present invention, first receiver 0 detects signal, determines the value of the signal, and then calculates equation (16) using a priori probabilities. When calculating equation (16), equations (18)-(20) are used. In equation (20) there are terms like Δln P. At the first time, Δln P are calculated using a priori probabilities which may be 0.5. After calculating equation (16) for signal bits i₀₁, i₀₂, q₀₁, q₀₂, the result is sent to receiver 1. In receiver 1, equation (16) is calculated for signal bits i₀₁, i₀₂, q₀₁, q₀₂ inserting the sent result to equation (20). In equation (20), Δln P like terms appear. These terms are updated to a posteriori ones by the result sent from receiver 0. The calculation result of equation (16) using a posteriori probabilities in receiver 1 is sent back to receiver 0. In receiver 0, equation (16) is calculated using the calculation result sent from receiver 1. These calculations and exchanges are repeated three or four times. Then, using final result of calculation of equation (16), signal decision is conducted. For signal bits i₁₁, i₁₂, q₁₁, q₁₂, the above process starts from receiver 1. The receiver 1 calculates equation (16) for i₁₁, i₁₂, q₁₁, q₁₂ using a priori probabilities and sends them to receiver 0. The receiver 0 calculates equation (16) for bits i₁₁, i₁₂, q₁₁, q₁₂ and sends them back to receiver 1. The receiver 1 calculates equation (16) for signal bits i₁₁, i₁₂, q₁₁, q₁₂, using the sent result from receiver 0. These processes are repeated three or four times and finally, signal decision is conducted in receiver 1 using the final result of equation (16).

The a posteriori probabilities for other bits i₀₂, q₀₁, and q₀₂ can be calculated in the similar way according to the following expressions: Bit i₀₂: $\begin{matrix} {{Bit}\quad i_{02}\text{:}} & \quad \\ {{{P\left( {i_{02} = {+ 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{i_{2} = \times},{+ 1},{\times {, \times}}} \right\}}} & (21) \\ {{{P\left( {i_{02} = {- 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{i_{2} = \times},{- 1},{\times {, \times}}} \right\}}} & (22) \\ {{Bit}\quad q_{01}\text{:}} & \quad \\ {{{P\left( {q_{01} = {+ 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{q_{1} = \times},{\times {,{+ 1}, \times}}} \right\}}} & (23) \\ {{{P\left( {q_{01} = {- 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{q_{1} = \times},{\times {,{{- 1} \times}}}} \right\}} & (24) \\ {{Bit}\quad q_{02}\text{:}} & \quad \\ {{{P\left( {q_{02} = {+ 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{q_{2} = \times},{\times {,{\times {,{+ 1}}}}}} \right\}}} & (25) \\ {{{P\left( {q_{02} = {- 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{0}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{q_{2} = \times},{\times {,{\times {,{+ 1}}}}}} \right\}}} & (26) \end{matrix}$

FIGS. 6 through 16 are block-diagrams of the receiver REC 0 which processes input signal y₀(t) and calculates Δln P(i₀₁/y₀(t)) according to equations (18) and (19).

Note that in FIGS. 6 through 16 “Lin” means Linear and “LN” means Non-linear outputs.

Receiver shown in FIGS. 3 through 16 calculates all a posteriori probabilities for bits transmitted in the symbols D₀ and D₁. In order to specify algorithm, the following substitutions must be done to get the proper results.

Common for bits i₀₁, i₀₂, q₀₁, q₀₂ in REC 0: S ₀ =Re{k·y ₀(t)·h* ₀₁ }, S ₁ =Im{k·y ₀(t)·h* ₀₁} S ₂ =Re{k·y ₀(t)·h* ₀₁ }, S ₃ =Im{k·y ₀(t)·h* ₀₀}, ΔE _(i) =k·h ₀₀ ·h* ₀₁ ·S* _(i) ReΔE _(i) =Re(ΔE _(i))=Re(k·h ₀₀ ·h* ₀₁ ·S* _(u)), ImΔE _(i) =Im(ΔE _(i))=Im(k·h ₀₀ ·h* ₀₁ ·S* _(i)), where S*_(i) is still defined in Table 1. A ₀=8↑h ₀₁|² , A ₁=8|h ₀₀|² are the constants;

-   A priori apr_q3=Δln P(q₀₁/y₀(t)) is obtained from REC0 i.e. obtained     from the adjacent receiver. -   A priori apr_q4=Δln P(q₀₂/y₀(t)) is obtained from REC0 i.e. obtained     from the adjacent receiver. -   A priori apr_i3=Δln P(i₀₁/y₀(t)) is obtained from REC0 i.e. obtained     from the adjacent receiver. -   A priori apr_i4=Δln P(q₀₂/y₀(t)) is obtained from REC0 i.e. obtained     from the adjacent receiver.     Specific for Bits in REC 0: -   Bit i₀₁: -   LUT A, LUT B shown in FIG. 9     S=−2S ₀,   FIG. 6     NL1=+S ₀ −A ₁ +Δln P(i ₀₂) for arm A,   FIG. 13     NL1=−S ₀ −A ₁ +Δln P(i ₀₂) for arm B,   FIG. 13     A=−(S ₃ +A ₁)+Δln P(q ₀₁),   FIG. 15     B=−(S ₃ −A ₁)+Δln P(q ₀₁),   FIG. 15     C=−(S ₃ +A ₁)+Δln P(q ₀₁),   FIG. 15     D=+(S ₃ −A ₁)+Δln P(q ₀₁),   FIG. 15     In1=−2S ₃ +Δln P(q ₀₁),   FIG. 16     In2=−2S ₃ +Δln P(q ₀₁),   FIG. 16 -   Bit q₀₁: -   LUT A, LUT B shown in FIG. 10     S=−2S ₃,   FIG. 6     NL1=+S ₀ −A ₁ +Δln P(i ₀₂) for arm A,   FIG. 13     NL1=−S ₀ −A ₁ +Δln P(i ₀₂) for arm B,   FIG. 13     A=−(S ₃ +A ₁)+Δln P(q ₀₁),   FIG. 15     B=+(S ₃ −A ₁)+Δln P(q ₀₁),   FIG. 15     C=−(S ₃ +A ₁)+Δln P(q ₀₁),   FIG. 15     D=+(S ₃ −A ₁)+Δln P(q ₀₁),   FIG. 15     In1=−(S ₀ +A ₁)+Δln P(i ₀₂),   FIG. 16     In2=+(S ₀ −A ₁)+Δln P(i ₀₂),   FIG. 16 -   Bit i₀₂: -   LUT A, LUT B shown in FIG. 11     S=−A ₁,   FIG. 6     NL1=−3S ₀ +Δln P(i ₀₁) for arm A,   FIG. 13     NL1=−S ₀ +Δln P(i ₀₁) for arm B,   FIG. 13     A=−(S ₃ +A ₁)+Δln P(q ₀₂),   FIG. 15     B=+(S ₃ −A ₁)+Δln P(q ₀₂),   FIG. 15     C=−(S ₃ +A ₁)+Δln P(q ₀₂),   FIG. 15     D=+(S ₃ −A ₁)+Δln P(q ₀₂),   FIG. 15     In1=−2S ₃ +Δln P(q ₀₁),   FIG. 16     In2=−2S ₃ +Δln P(q ₀₁),   FIG. 16 -   Bit q₀₂: -   LUT A, LUT B shown in FIG. 12     S=−A ₁,   FIG. 6     NL1=−2S ₀ +Δln P(i ₀₁) for arm A,   FIG. 13     NL1=−2S ₀ +Δln P(i ₀₁) for arm B,   FIG. 13     A=−3S ₃ +Δln P(q ₀₁), FIG. 15, arm A     B=−3S ₃ +Δln P(q ₀₁), FIG. 15, arm A     C=−3S ₃ +Δln P(q ₀₁), FIG. 15, arm A     D=−3S ₃ +Δln P(q ₀₁), FIG. 15, arm A     A=−S ₃ +Δln P(q ₀₁), FIG. 15, arm B     B=−S ₃ +Δln P(q ₀₁), FIG. 15, arm B     C=−S ₃ +Δln P(q ₀₁), FIG. 15, arm B     D=−S ₃ +Δln P(q ₀₁), FIG. 15, arm B     In1=−(S ₀ +A ₁)+Δln P(i ₀₂),   FIG. 16     In2=+(S ₀ −A ₁)+Δln P(i ₀₂),   FIG. 16

FIGS. 6 through 16 are explained below.

In FIG. 6, the input signal y(t) is input to the signal processor 20. The details of the signal processor 20 is shown in FIG. 7. The signal processor 20 outputs signals S, Out A, and Out B. The signal Out A is input to a lookup table LUT A, output after certain permutation and input to the main processor A. The signal Out B is input to a lookup table LUT B, output after certain permutation and input to the main processor B. The signal S is directly input to an adder 17. The details of the lookup tables LUT A and LUT B are shown in FIGS. 9 through 12. The details of the main processor A and B are shown in FIG. 13. The details of the main processor A are the same as the details of the main processor B.

The main processor A outputs signals Lin A and NL A. The main processor B outputs signals Lin B and NL B. The signals Lin A and NL B are input to a subtractor 16. The subtractor 16 outputs the difference of signals Lin A and NL B which is input to the adder 17. The signals NL A and Lin B are input to a subtractor 15. The subtractor 15 outputs the difference of signals NL A and Lin B which is input to the adder 17. The signals from the subtractor 15 and 16 and the signal S are added by the adder 17 and output as Δln P(i, q/y(t)).

In FIG. 7, the details of the signal processor 20 are shown. The input signal y(t) is input to a multiplier 22 and multiplied by kh*₀₀. The real part of the output of the multiplier 22 is output as signal S₀(t) and the imaginary part of the output of the multiplier 22 is output as signal S₃(t). The input signal y(t) is also input to a multiplier 21 and multiplied by kh*₀₁. The output of the multiplier 21 is divided into the real part which is signal S₂(t) and the imaginary part which is signal S₁(t). The signal S₁(t) is input to an S(t) port of the Q signal processor 23 and the signal S₂(t) is input to an S(t) port of the I signal processor 24. The details of the I signal processor 24 and those of the Q signal processor 23 is the same and the details are shown in FIG. 8. The I signal processor 24 receives signal A₀-apr_i4 at port A₀, apr_i3 at port apr and the real part of ΔE at port ΔE_(i), and calculates these signal values outputting signals OB_(i) and OA_(i). Similarly, the Q signal processor 23 receives signal A₀-apr_q4 at port A₀, apr_q3 at port apr and the imaginary part of ΔE at port ΔE_(i), and calculates these signal values outputting signals OB_(i) and OA_(i). The signals OB_(i) from the I signal processor 24 and the Q signal processor 23 are input to an adder 25 and output as signal Out A after addition. The signals OA_(i) from the I signal processor 24 and the Q signal processor 23 are input to an adder 26 and output as signal Out B after addition. The memory 27 stores constants A₀ and ΔE.

FIG. 8 shows the details of the I and Q signal processors which are the same. The signal S(t), ΔE_(i), A₀ and apr are input. An adder 30 adds S(t) and ΔE_(i) outputting the sum as SP_(i). An adder 31 calculates SP_(i)+A₀ which is input to a function calculator 34. A subtractor 32 calculates SP_(i)−A₀ which is input to a function calculator 35. The function calculator 34 calculates ln(cosh((SP_(i)+A₀)/2)) as L4_(i). The function calculator 35 calculates ln(cosh ((SP_(i)−A₀)/2)) as L2_(i). An adder 36 calculates L2_(i)+L4_(i) which is input to an adder 40. An multiplier 33 multiplies SP_(i) by 2 and input the result to a subtractor 39. The signal apr is input to the subtractor 39 and the subtractor 39 calculates 2SP_(i)−apr which is input to an adder 38. A subtractor 37 calculates L2_(i)−L4_(i) which is input to the adder 38. The adder 38 calculates L2_(i)−L4_(i)+2SP_(i)−apr which is input to a function calculator 51. The function calculator 51 calculates 2ln(cosh((L2_(i)−L4_(i)+2SP_(i)−apr)/2)) as H2_(i) which is input to an adder 40. The adder 40 calculates L2_(i)+L4_(i)+H2_(i) outputting as OB_(i).

A subtractor 41 subtracts ΔE_(i) from S(t) outputting the difference as SM_(i). An adder 43 calculates SM_(i)+A₀ which is input to a function calculator 45. A subtractor 44 calculates SM_(i)−A₀ which is input to a function calculator 46. The function calculator 45 calculates ln(cosh ((SM_(i)+A₀)/2)) as L1_(i). The function calculator 46 calculates ln(cosh((SM_(i)−A₀)/2)) as L3_(i). An adder 47 calculates L1_(i)+L3_(i) which is input to an adder 53. A multiplier 42 multiplies SM_(i) by 2 and input the result to a subtractor 50. The signal apr is input to the subtractor 50 and the subtractor 50 calculates 2SM_(i)−apr which is input to an adder 49. A subtractor 48 calculates L3_(i)−L1_(i) which is input to the adder 49. The adder 49 calculates L3_(i)−L1_(i)+2SM_(i)−apr which is input to a function calculator 52. The function calculator 52 calculates 2ln (cosh((L3_(i)−L1_(i)+2SM_(i)−apr)/2)) as H1_(i) which is input to an adder 53. The adder 53 calculates L1_(i)+L3_(i)+H1_(i) outputting as OA_(i).

FIGS. 9 through 12 show lookup tables.

In FIG. 9, the lookup tables LUT A and LUT B for bit i₀₁ are shown. The lookup table LUT A outputs input signals without permutation. The lookup table LUT B outputs input signals with permutation. By the lookup table LUT B, signal IB[2] is changed to signal I[4], signal IB[3] is changed to signal I[5], signal IB[4] is changed to signal I[2] and signal IB[5] is changed to signal I[3]. The other signals are output without permutation.

In FIG. 10, the lookup tables LUT A and LUT B for bit q₀₁ are shown. The lookup table LUT A outputs input signals without permutation. The lookup table LUT B outputs input signals without permutation.

In FIG. 11, the lookup tables LUT A and LUT B for bit i₀₂ are shown. By the lookup table LUT A, signal IB[0] is changed to signal I[6], signal IB[1] is changed to signal I[7], signal IB[2] is changed to signal I[4] and signal IB[3] is changed to signal I[5]. The other signals are output without permutation. By the lookup table LUT B, signal IB[4] is changed to signal I[6], signal IB[5] is changed to signal I[7], signal IB[6] is changed to signal I[4] and signal IB[7] is changed to signal I[5]. The other signals are output without permutation.

In FIG. 12, the lookup tables LUT A and LUT B for bit q₀₂ are shown. By the lookup table LUT A, signal IB[0] is changed to signal I[5], signal IB[2] is changed to signal I[4], signal IB[4] is changed to signal I[7] and signal IB[6] is changed to signal I[6]. The other signals are output without permutation. By the lookup table LUT B, signal IB[1] is changed to signal I[5], signal IB[3] is changed to signal I[4], signal IB[5] is changed to signal I[7] and signal IB[7] is changed to signal I[6]. The other signals are output without permutation.

FIG. 13 shows the details of the main processor common to both the main processor A and the main processor B. Input signals I[0], . . . , I[7] are input to the main processor. I[0], . . . , I[7] input to processor 0 are processed and output as signal Lin, Lev. 3, Lev. 4, and NL. The signal Lin is input to an adder 60. The signal Lev. 3 is input to a processor 1. Signal 0 and signal 1 of signal Lev. 4 are input to an adder 62 and an adder 63, respectively. A signal NL is input to an adder 64. Four signals of Lev. 3 from the processor 0 and constants A, B, C, D are processed by the processor 1 and output as signals Lin, Lev. 4, and NL. The signal Lin is input to the adder 60. The added signal by the adder 60 is input to an adder 61. Signal 0 and 1 of Lev. 4 from the processor 1 are input to the adder 62 and 63, respectively. The adder 62 adds the signal 0 of Lev. 4 from the processor 0 and the signal 0 of Lev. 4 from the processor 1 outputting the result to a processor 2. The adder 63 adds the signal 1 of Lev. 4 from the processor 0 and the signal 1 of Lev. 4 from the processor 1 outputting the result to the processor 2. The signal NL from the processor 1 is input to the adder 64, summed with the signal NL from the processor 0 and output to an adder 65. The processor 2 receives the outputs of the adder 62 and 63 and constants In1 and In2 outputting signals Lin and NL. The signal Lin from the processor 2 and the output of the adder 60 are summed by an adder 61 outputting the signal Lin of the main processor. The output of the adder 64, the signal NL from the processor 2 and a constant NL1 are added by the adder 65 and the result is input to a function calculator 66. The function calculator 66 calculates ln(cosh((input to the 66)/2)) outputting as NL of the main processor.

FIG. 14 shows the details of the processor 0 of FIG. 13. Input signal I[0] is summed with I[1] by an adder 70 which is input to an adder 71. I[1] is subtracted from I[0] by a subtractor 74 and the result multiplied by 0.5 is output as signal 0 of Lev. 3. I[2] is summed with I[3] by an adder 76. The output of the adder 76 is input to the adder 71 and a subtractor 77. The output of the subtractor 77 multiplied by 0.25 is output as signal 0 of Lev. 4. The output of the adder 71 is input to an adder 72. I[3] is subtracted from I[2] by a subtractor 79 and the result multiplied by 0.5 is output as signal 1 of Lev. 3. I[4] is summed with I[5] by an adder 81 and input-to an adder 82. I[5] is subtracted from I[4] by a subtractor 85 and the result multiplied by 0.5 is output as signal 2 of Lev. 3. I[6] is summed with I[7] by an adder 87 and the result is input to the adder 82 and a subtractor 88. The output of the subtractor 88 multiplied by 0.25 is output as signal 1 of Lev. 4. The adder 82 adds the-output of the adder 81 with the output of the adder 87 inputting the result to a subtractor 83. The subtractor 83 subtracts the output of the adder 82 from the output of the subtractor 71 and the output of the subtractor 83 multiplied by 0.125 is output as signal NL. I[7} is subtracted from I[6] by a subtractor 90 and the output of the subtractor 90 multiplied by 0.5 is output as signal 3 of Lev. 3.

FIG. 15 shows the details of the processor 1 in FIG. 13. Signals 0 through 3 of Lev. 3 from the processor 0 are added with constants A through D, respectively. The output of the adder 91 is processed by the function calculator 95-1 using function ln(cosh (input/2)). Similarly, the output of the adder 92 is processed by the function calculator 95-2, the output of the adder 93 is processed by the function calculator 95-3, and the output of the adder 94 is processed by the function calculator 95-4. The output of the function calculator 95-1 and the output of the function calculator 95-2 are added by an adder 96 and the result is input to an adder 100. The output of the function calculator 95-2 is subtracted from the output of the function calculator 95-1 outputting the result as signal 0 of Lev. 4. The output of the function calculator 95-3 and the output of the function calculator 95-4 are added by an adder 98 and the result is input to an adder 101. The output of the function calculator 95-4 is subtracted from the output of the function calculator 95-3 outputting the result as signal 1 of Lev. 4. The output of the adder 96 and the output of the adder 98 are added by the adder 100 and the result multiplied by 0.25 is output as signal Lin. The output of adder 98 is subtracted from the output of the adder 96 by the subtractor 101 and the result multiplied by 0.5 is output as signal NL.

Signal 0 of input is added with signal In1 by the adder 102 inputting the result to a function calculator 103. Signal 1 of input is added with signal In2 by the adder 104 inputting the result to a function calculator 105. The function calculators 103 and 105 process the input with a function ln(cosh(input/2)). The outputs of the function calculator 103 and 105 are added by an adder 106. The output of the adder 106 multiplied by 0.5 is output as signal Lin. The output of the function calculator 105 is subtracted from the output of the function calculator 103 by a subtractor 107 outputting signal NL.

Bit i₀₁ in the Receiver REC 1

According to the present invention, the bit estimations are obtained in both REC0 and REC1 receivers independently as shown in FIGS. 1 and 3. $\begin{matrix} {{{P\left( {i_{01} = {+ 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{1}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{i_{1} = {+ 1}},{\times {,{\times {, \times}}}}} \right\}}} & (27) \\ {{{P\left( {i_{01} = {- 1}} \right)} = {\sum\limits_{n = 0}^{127}\quad{{{P_{a}\left( S_{n} \right)} \cdot P}\left( {S_{n}/{y_{1}(t)}} \right)}}}{{{{For}\quad{all}\quad S_{n}} \in D_{0}} = \left\{ {{i_{1} = {- 1}},{\times {,{\times {, \times}}}}} \right\}}} & (28) \end{matrix}$

Thus in the case of REC1 the same block-diagram that shown in FIGS. 6-16 can be used for calculation of Δln P(i₀₁/y₁(t)) from the input signal y₁(t). However the following replacements in FIG. 6 are necessary: S ₀ =Re{k·y ₀ ·h* ₁₀ }, S ₁ =Im{k·y ₀ ·h* ₁₁} S ₂ =Re{k·y ₀ h* ₁₁ }, S ₃ =Im{k·y ₀ ·h* ₁₀} ΔE _(i 32 k·h) ₁₀ h* ₁₁ ·S* _(i) ReΔE _(i) =Re(ΔE _(i))=Re(k·h ₁₀ ·h* ₁₁ ·S* ₁), ImΔE _(i) =Im(ΔE _(i))=Im(k·h ₁₀ ·h* ₁₁ ·S* _(i)),

when S*_(i) are still defined in Table 1. A ₀=8|h ₁₁|² , A ₁=8|h ₁₀|²

-   A priori apr_q3=Δln P(q₁₁/y₁(t)) is obtained from REC1 i.e. obtained     from the adjacent receiver. -   A priori apr_q4=Δln P(q₁₂/y₁(t)) is obtained from REC1 i.e. obtained     from the adjacent receiver. -   A priori apr_i3=Δln P(i₁₁/y₁(t)) is obtained from REC1 i.e. obtained     from the adjacent receiver. -   A priori apr_i4=Δln P(i₁₂/y₁(t)) is obtained from REC1 i.e. obtained     from the adjacent receiver.     Combining

Finally, estimations for bits that are obtained in both receivers, Δln P(D₀/y₀(t)) and Δln P(D₀/y₁(t)) are combined with combiner scheme shown in FIG. 4 with the following slicer where decisions about transmitted bits i₀₁, i₀₂, q₀₁, q₀₂ are made. The decision about transmitted bits is made by slicer.

Processing Symbol D₁

As can be found from FIG. 1, the proposed MIMO 2 by 2 transmission scheme is symmetrical with respect to transmitted symbols D₀ and D₁. Therefore all discussions and equations that were obtained for symbol D₀ are correct for symbol D₁. The only substitution which must be done is: h₀₀→h₁₀ and h₀₁→h₁₁

Complexity Analysis

In order to prove low complexity of the proposed algorithm we estimate complexity level for cases when both transmitters employ QAM-16 constellation shown in FIG. 5. We estimate complexity in the terms of operations—complex/real addition, subtraction and multiplication.

The MLD detector multiplies D by the known channel matrix and then calculates the Euclidean distance from the received vector. Thus, the complexity of the MLD detector is exponential in the number of transmitted antennas. Each of the Euclidean distance calculations requires four complex multiplications, two complex additions and two complex subtractions.

One complex multiplication is equal to four real multiplications plus two real additions and one real subtraction: (a+i·b)·(c+i·d)=a·c+i·a−d+i·b·c−b·d   (29)

Note that in the following complexity analysis we assumed that the complexity of the real additions and real subtractions are the same. TABLE 3 QAM-16, MIMO 2 by 2 by complex operations Complex Complex Complex Real Real Multiplication ADD SUB Multiplication ADD MLD 256 128 128 MLD In real term In real In real 1024 768 term term Turbo  16  0  0 Turbo In real term In real In real 64 46 term term

5 256 complex multiplications=1024 real multiplication+512 real addition+256 real subtractions.

16 complex multiplications=64 real multiplications+22 real additions+16 real subtractions.

As can be found from Table 3 the turbo iterations of the present invention require less operation than MLD-based detector and at the same time provide the similar BER performances (FIG. 2). 

1. A receiver for M-ary-QAM MIMO Communication System comprising at least two receiving units each with at least one antenna, each receiving unit comprising: a posteriori probability calculation unit for calculating a posteriori probabilities for signals which are detected by at least one of the antenna and are modulated such that an amplitude of the signals is changed according to signal values, based on set values; a transmission unit for transmitting the a posteriori probabilities to another receiving unit; a setting unit for setting the a posteriori probabilities transmitted from another receiving unit to the set values; and a decision unit for deciding signal value based on a combination of a posteriori probabilities calculated by own receiving unit and another receiving unit, wherein the transmission of the a posteriori probabilities between at least two receiving units is repeated an empirically determined number of times.
 2. The receiver according to claim 1, wherein the signals received by the receiving unit are modulated by QAM-16 method.
 3. The receiver according to claim 1, wherein the a posteriori probability is given by ${\Delta\quad{P\left( {i/{y(t)}} \right)}} = \frac{P\left( {i = {{+ 1}/{y(t)}}} \right)}{P\left( {i = {{- 1}/{y(t)}}} \right)}$ or Δln P(i/y(t))=ln P(i=+1/y(t))−ln P(i=−1/y(t)) where P(i=+1/y(t))—is a probability that bit i is +1 in the case of received signal being y(t) and P(i=−1/y(t)) is a probability that bit i is −1 in the case of received signal being y(t).
 4. The receiver according to claim 1, wherein the a posteriori probability calculation unit comprises a non-linear unit for changing a first value to a second value non-linearly.
 5. A receiving method of a receiver for M-ary-QAM MIMO Communication System comprising at least two receiving units each with at least one antenna, the method of each receiving unit comprising: calculating a posteriori probabilities for signals which are detected by at least one of the antenna and are modulated such that an amplitude of the signals is changed according to signal values, based on set values; transmitting the a posteriori probabilities to another receiving unit; setting the a posteriori probabilities transmitted from another receiving unit to the set values; and deciding a signal value based on a combination of a posteriori probabilities calculated by own receiving unit and another receiving unit, wherein the transmission of the a posteriori probabilities between at least two receiving units is repeated an empirically determined number of times. 